package org.muyu.example2;

import org.muyu.example2.base.SecurityMgr;

/**
 * 结构型模式 => 享元模式
 *
 * 运用共享技术有效地支持大量细拉度的对象
 * 享元模式设计的重点就在于分离变与不变，把一个对象的状态分成内部状态和外部状态，内部状态是不变的，外部状态是可变的
 */
public class Client {
    public static void main(String[] args) {
        //需要先登录，然后再判断是否有权限
        SecurityMgr mgr = SecurityMgr.getInstance();
        mgr.login("张三");
        mgr.login("李四");
        boolean f1 = mgr.hasPermit("张三","薪资数据","查看");
        boolean f2 = mgr.hasPermit("李四","薪资数据","查看");

        System.out.println("f1 == " + f1);
        System.out.println("f2 == " + f2);
        for(int i = 0; i < 3; i++){
            mgr.login("张三"+i);
            mgr.hasPermit("张三"+i,"薪资数据","查看");
        }
    }
}
